package com.szrt.day20170421.util;

import java.util.List;
import java.util.Scanner;

import com.szrt.day20170421.entity.Student;
import com.szrt.day20170421.service.StudentService;

public class MenuUtil {

	public static void printMainMenu() {

		System.err.println("\t\t       欢迎登录高考成绩自主查询系统        ");
		System.err.println("\t\t —————————————————————————————");
		System.err.println("\t\t          1.管理员登录                 ");
		System.err.println("\t\t          2. 考 生登录              ");
		System.err.println("\t\t          3. 退   出                       ");
		System.err.println("\t\t —————————————————————————————");
		System.err.println("请输入相应的操作数：");

	}
	
	
	public static void printFirstMenu(){
		System.err.println("============1级菜单=============");
		System.err.println("12 修改考生信息");
		System.err.println("13 修改数学成绩");
		System.err.println("14 删除考生信息");
		System.err.println("15 查询考生信息");
		System.err.println("16 修改考生的语文信息");
		System.err.println("17 返回上一级菜单");
	}
	
	public static void userFirstMenu(){
		System.err.println("\t\t _____________________________");
		System.err.println("\t\t               欢迎进入考生主界面        ");
		System.err.println("\t\t —————————————————————————————");
		System.err.println("\t\t          1.我的信息                 ");
		System.err.println("\t\t          2.查询本市总分状元              ");
		System.err.println("\t\t          3.查询全国各个省份的状元              ");
		System.err.println("\t\t          4.查询指定城市的状元              ");
		System.err.println("\t\t          5. 1.查询各个省份500<=x<=600分的总人数并由高到低排列显示                       ");
		System.err.println("\t\t          6. 2.查询各个省份x>600超过600分的总人数并由低到高排列显示                        ");
		System.err.println("\t\t          7. 返回上一层                       ");
		System.err.println("\t\t —————————————————————————————");
		System.err.println("请输入相应的操作数:");
		}
	
	
	/**
	 * 管理员登录：   必须要输入用户名和密码
	 * @param scanner
	 */
	public static void adminLogin(Scanner scanner,StudentService service,List<Student> studentList){
		System.out.println("请输入管理员用户名");
		String username = scanner.next();
		
		System.out.println("密码");
		String passord = scanner.next();
		
		if("admin".equals(username) && passord.equals(passord)){
			//登录成功
			while(true){
				printFirstMenu();
				
				System.err.println("请选择所需要的错作...");
				int ope = scanner.nextInt();
				
				
				
				if(ope ==14){
					
					System.out.println("请输入要删除的学生的id");
					String id = scanner.next();
					
					service.deleteById(studentList, id);
					System.out.println("删除成功...");
					
				}else if(ope==15){
					
					//打印所有的学生
					service.printStudents(studentList);
				}else if(ope==16){
					
					System.out.println("请输入要修改的学生的id");
					String id = scanner.next();
					
					System.out.println("请输入新的语文成绩..");
					int newScoce =scanner.nextInt();
					
					int counter = service.updateChineseById(studentList, id, newScoce);
					if(counter>0){
						System.out.println("修改成功...");
						
					}else{
						System.out.println("查入此人...");
					}
					
					
				}else if(ope==17){
					break;
				}
			}
			
			System.out.println("跳出循环....");
		}
	}


	public static void studentLogin(Scanner scanner, StudentService service, List<Student> studentList) {
		System.out.println("请输入学生的用户名： 手机号码");
		String phone = scanner.next();
		
		System.out.println("请输入学生的密码");
		String password = scanner.next();
		
		//根据学生输入的手机号码和密码判断是否可以登录成功
		
		boolean flag = service.checkLogin(studentList, phone, password);
		
		if(flag){
			while(true){
				userFirstMenu();
				System.err.println("请输入相应的操作数:");
				
				int ope = scanner.nextInt();
				
				if(ope ==1 ){
					
					//我的信息 
					Student student = service.findMessageByPhone(studentList,phone);
					
					if(student == null ){
						System.out.println("该考生"+phone + "不存在");
					}else{
						System.out.println(student);
					}
					
				}else if (ope ==4 ){
					//查询本市总分状元   
					System.err.println("请输入要查询的城市");
					String city  = scanner.next();
					Student student = service.findMaxOfCurrentCity(studentList, city);
					
					if(student.getIdExam()== null){
						System.err.println("输入的城市有误..");
					}else{
						System.err.println(student);
					}
				}else{
					//如果按6退出
					break;
				}
				
				
			}
			
		}
		
		
	}

}
